package com.zx.security.block.service;


import com.zx.security.common.model.LoginUser;
import org.springframework.security.oauth2.jwt.JwtDecoder;

/**
 * <p>
 * description: token验证处理 <br>
 * create: 2025-05-06 10:48
 * </p>
 *
 * @author zhou  xun
 */
public interface ICustomTokenService {
    /**
     * 获取用户身份信息
     *
     * @param token 令牌
     * @return {@link LoginUser}
     * @author zhou  xun
     * @since 2025-05-06
     */
    LoginUser getLoginUser(String token);

    /**
     * 获取JWT解码器
     *
     * @return {@link JwtDecoder}
     */
    JwtDecoder getJwtDecoder();

    /**
     * 删除用户身份信息
     *
     * @param token 令牌
     * @author zhou  xun
     * @since 2025-05-06
     */
    void delLoginUser(String token);
}